#ifndef AXELYNX_APP_H_INCLUDED
#define AXELYNX_APP_H_INCLUDED

namespace axelynx
{
    class Engine;

    class AxelynxApp
    {
        public:
        virtual void Initialisation() = 0;
        virtual void Loading() = 0;
        virtual void Update() = 0;
        virtual void Render() = 0;
        virtual void Free() = 0;
        virtual void DeInitialisation() = 0;

        void SetEngine(Engine * eng)
        {
            eng_ = eng;
        }

        protected:
        Engine *eng_;
    };
}

#endif // AXELYNX_APP_H_INCLUDED
